# Contributor: A. Wilcox <awilfox@adelielinux.org>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=hwids
pkgver=20200306
pkgrel=0
pkgdesc="Hardware identification databases"
url="https://github.com/gentoo/hwids/"
arch="noarch"
options="!check"  # No test suite, just databases.
license="BSD-3-Clause OR GPL-2.0-or-later"
makedepends="eudev-dev"
subpackages="$pkgname-net $pkgname-pci $pkgname-udev $pkgname-usb"
depends="$subpackages"
subpackages="$subpackages $pkgname-doc"
source="https://github.com/gentoo/hwids/archive/hwids-$pkgver.tar.gz"
builddir="$srcdir/hwids-hwids-$pkgver"

build() {
	make UDEV=yes
}

package() {
	make DESTDIR="$pkgdir" DOCDIR="/usr/share/doc/$pkgname-$pkgver" \
		MISCDIR="/usr/share/hwdata" UDEV=yes install
}

_mv() {
	local _file
	pkgdesc="$pkgdesc ($1)"
	shift
	depends=""
	mkdir -p "$subpkgdir"/usr/share/hwdata
	for _file in $*; do
		mv "$pkgdir"/usr/share/hwdata/$_file "$subpkgdir"/usr/share/hwdata
	done
}

usb() {
	replaces="hwdata-usb"
	provides="hwdata-usb=$pkgver-r$pkgrel"
	_mv "USB IDs" usb.ids
}

pci() {
	replaces="hwdata-pci"
	provides="hwdata-pci=$pkgver-r$pkgrel"
	_mv "PCI IDs" pci.ids
}

net() {
	replaces="hwdata-oui hwdata"
	provides="hwdata-oui=$pkgver-r$pkgrel"
	license="Public-Domain"
	_mv "Networking OUIs" oui.txt iab.txt
}

udev() {
	install_if="hwids=$pkgver-r$pkgrel eudev"
	install_if="hwids-pci=$pkgver-r$pkgrel eudev"
	install_if="hwids-usb=$pkgver-r$pkgrel eudev"
	pkgdesc="$pkgdesc (udev integration)"

	mkdir -p "$subpkgdir"/
	mv "$pkgdir"/lib "$subpkgdir"/
	mv "$pkgdir"/etc "$subpkgdir"/
}

sha512sums="eff1d2783925ca459b387fbaa5cf68a98aa4209ab8509ad92a902b4d02cc7f4a47e5506c2beed4c792d24a8ab636ad77b376a92b59ae4f605d1b5258350ff250  hwids-20200306.tar.gz"
